// import svgIcon from './svg-icon/index.vue'
// import popup from './popup/index.vue'
import { defineAsyncComponent } from 'vue'
export { confirm } from './confirm/index.js'
export { message } from './message/index.js'

export default {
  install(app) {
    // app.component('m-svg-icon', svgIcon), app.component('m-popup', popup)
    // 利用vite中的glob函数获取所有的组件，借助 defineAsyncComponent 完成组件注册

    // 1、获取当前任意文件夹下的index文件
    const components = import.meta.glob('./*/index.vue')
    // 2、遍历组件
    for (const [fullPath, fn] of Object.entries(components)) {
      // 3、获取注册组件的名称
      const componentName = 'm-' + fullPath.replace('./', '').split('/')[0]
      // 4、注册组件 使用  defineAsyncComponent 完成组件注册
      app.component(componentName, defineAsyncComponent(fn))
    }
  }
}
